Kenny сделал хорошую запись о списке дефолтных аккаунтов для различных продуктов VMware, а мы сведем это в таблицу для вашего удобства, добавив парочку отсутствующих продуктов:
Название продукта
Веб-адрес или консоль для доступа
Логин (username)
Пароль (password)
VMware vSphere Data Recovery
http://<имя или IP>:5480
root
vmw@re
VMware vSphere Storage Appliance
VSA Manager
svaadmin
svapass
VMware View Administrator
http://<имя или IP>/admin
Администратор Windows
Администратор Windows
VMware Site Recovery Manager
Консоль SRM
Администратор vCenter
Администратор vCenter
VMware vCloud Director
http://<имя или IP>/cloud
administrator
Указывается при установке
VMware vCloud Director Appliance
Direct Console
root
Default0
vCloud Director ApplianceOracleXEDatabase
БД
vcloud
VCloud
VMware vSphere Management Assistant
Direct Console
vi-admin
Задается после логина
VMware vCloud Connector Server
http://<имя или IP>:5480
admin
vmware
VMware vCloud Connector Node
http://<имя или IP>:5480
admin
vmware
VMware vCenter Chargeback
http://<имя или IP>:8080/cbmui
root
vmware
VMware Horizon Application Manager
http://<имя или IP>, http://<имя или IP>/SAAS/login/0
Если мы запустим утилиту esxtop, то увидим следующие столбцы (интересующее нас выделено красным):
Нас интересует 5 счетчиков, касающиеся процессоров виртуальных машин, с помощью которых мы сможем сделать выводы об их производительности. Рассмотрим их подробнее:
Счетчик %RUN
Этот счетчик отображает процент времени, в течение которого виртуальная машина исполнялась в системе. Когда этот счетчик для ВМ около нуля или принимает небольшие значение - то с производительностью процессора все в порядке (при большом его значении для idle). Однако бывает так, что он небольшой, а виртуальная машина тормозит. Это значит, что она заблокирована планировщиком ESXi или ей не выделяется процессорного времени в связи с острой нехваткой процессорных ресурсов на сервере ESXi. В этом случае надо смотреть на другие счетчики (%WAIT, %RDY и %CSTP).
Если значение данного счетчика равно <Число vCPU машины> x 100%, это значит, что в гостевой ОС виртуальной машины процессы загрузили все доступные процессорные ресурсы ее vCPU. То есть необходимо зайти внутрь ВМ и исследовать проблему.
Счетчики %WAIT и %VMWAIT
Счетчик %WAIT отображает процент времени, которое виртуальная машина ждала, пока ядро ESXi (VMkernel) выполняло какие-то операции, перед тем, как она смогла продолжить выполнение операций. Если значение этого счетчика значительно больше значений %RUN, %RDY и %CSTP, это значит, что виртуальная машина дожидается окончания какой-то операции в VMkernel, например, ввода-вывода с хранилищем. В этом случае значение счетчика %SYS, показывающего загрузку системных ресурсов хоста ESXi, будет значительно выше значения %RUN.
Когда вы видите высокое значение данного счетчика, это значит, что нужно посмотреть на производительность хранилища виртуальной машины, а также на остальные периферийные устройства виртуального "железа". Зачастую, примонтированный ISO-образ, которого больше нет на хранилище, вызывает высокое значение счетчика. Это же касается примонтированных USB-флешек и других устройств ВМ.
Не надо пугаться высокого значения %WAIT, так как оно включает в себя счетчик %IDLE, который отображает простой виртуальной машины. А вот значение счетчика %VMWAIT - уже более реальная метрика, так как не включает в себя %IDLE, но включает счетчик %SWPWT (виртуальная машина ждет, пока засвопированные таблицы будут прочитаны с диска; возможная причина - memory overcommitment). Таким образом, нужно обращать внимание на счетчик %VMWAIT. К тому же, счетчик %WAIT представляет собой сумму метрик различных сущностей процесса виртуальной машины:
Счетчик %RDY
Главный счетчик производительности процессора. Означает, что виртуальная машина (гостевая ОС) готова исполнять команды на процессоре (ready to run), но ожидает в очереди, пока процессоры сервера ESXi заняты другой задачей (например, другой ВМ). Является суммой значений %RDY для всех отдельных виртуальных процессоров ВМ (vCPU). Обращать внимание на него надо, когда он превышает пороговое значение 10%.
По сути, есть две причины, по которым данный счетчик может зашкаливать приведенное пороговое значение:
сильная нагрузка на физические процессоры из-за большого количества виртуальных машин и нагрузок в них (здесь просто надо уменьшать нагрузку)
большое количество vCPU у конкретной машины. Ведь виртуальные процессоры машин на VMware ESX работают так: если у виртуальной машины 4 vCPU, а на хосте всего 2 физических pCPU, то одна распараллеленная операция (средствами ОС) будет исполняться за в два раза дольший срок. Естественно, 4 и более vCPU для виртуальной машины может привести к существенным задержкам в гостевой ОС и высокому значению CPU Ready. Кроме того, в некоторых случаях нужен co-sheduling нескольких виртуальных vCPU (см. комментарии к статье), когда должны быть свободны столько же pCPU, это, соответственно, тоже вызывает задержки (с каждым vCPU ассоциирован pCPU). В этом случае необходимо смотреть значение счетчика %CSTP
Кроме того, значение счетчика %RDY может быть высоким при установленном значении CPU Limit в настройках виртуальной машины или пула ресурсов (в этом случае посмотрите счетчик %MLMTD, который при значении больше 0, скорее всего, говорит о достижении лимита). Также посмотрите вот этот документ VMware.
Счетчик %CSTP
Этот счетчик отображает процент времени, когда виртуальная машина готова исполнять команды, одна вынуждена ждать освобождения нескольких vCPU при использовании vSMP для одновременного исполнения операций. Например, когда на хосте ESXi много виртуальных машин с четырьмя vCPU, а на самом хосте всего 4 pCPU могут возникать такие ситуации с простоем виртуальных машин для ожидания освобождения процессоров. В этом случае надо либо перенести машины на другие хосты ESXi, либо уменьшить у них число vCPU.
В итоге мы получаем следующую формулу (она верна для одного из World ID одной виртуальной машины)
%WAIT + %RDY + %CSTP + %RUN = 100%
То есть, виртуальная машина либо простаивает и ждет сервер ESXi (%WAIT), либо готова исполнять команды, но процессор занят (%RDY), либо ожидает освобождения нескольких процессоров одновременно (%CSTP), либо, собственно, исполняется (%RUN).
На сайте компании Slym Software обнаружилась интересная утилита vSphere Configuration Backup, которая позволяет производить резервное копирование конфигурации серверов VMware ESXi из графического интерфейса:
Напомним, что резервную копию настроек ESXi можно сделать из командной строки. Сама же утилита vSphere Configuration Backup делает не только бэкап конфига ESXi, но и позволяет сделать резервную копию базы данных vCenter. По умолчанию политика хранения бэкапов (Retention Policy) составляет 2 недели.
Если речь идет о виртуальных машинах на сервере VMware ESXi, работающих с дисковым массивом, можно выделить 5 видов очередей:
GQLEN (Guest Queue) - этот вид очередей включает в себя различные очереди, существующие на уровне гостевой ОС. К нему можно отнести очереди конкретного приложения, очереди драйверов дисковых устройств в гостевой ОС и т.п.
WQLEN (World Queue/ Per VM Queue) - это очередь, существующая для экземпляра виртуальной машины (с соответствующим World ID), которая ограничивает единовременное число операций ввода-вывода (IOs), передаваемое ей.
AQLEN (Adapter Queue) - очередь, ограничивающая одновременное количество обрабатываемых на одном HBA-адаптере хоста ESXi команд ввода вывода.
DQLEN (Device Queue / Per LUN Queue) - это очередь, ограничивающая максимальное количество операций ввода-вывода от хоста ESXi к одному LUN (Datastore).
Эти очереди можно выстроить в иерархию, которая отражает, на каком уровне они вступают в действие:
Очереди GQLEN бывают разные и не относятся к стеку виртуализации VMware ESXi, поэтому мы рассматривать их не будем. Очереди SQLEN мы уже частично касались тут и тут. Если до SP дискового массива со стороны сервера ESX / ESXi используется один активный путь, то глубина очереди целевого порта массива (SQLEN) должна удовлетворять следующему соотношению:
SQLEN>= Q*L
где Q - это глубина очереди на HBA-адаптере, а L - число LUN, обслуживаемых SP системы хранения. Если у нас несколько активных путей к одному SP правую часть неравенства надо еще домножить на P - число путей.
Соответственно, в виртуальной инфраструктуре VMware vSphere у нас несколько хостов имеют доступ к одному LUN через его SP и получается следующее соотношение:
SQLEN>= ESX1 (Q*L*P) + ESX2 (Q*L*P)+ и т.д.
Теперь рассмотрим 3 оставшиеся типа очередей, которые имеют непосредственное отношение к хосту VMware ESXi:
Как мы видим из картинки - очереди на различных уровнях ограничивают число I/O, которые могут быть одновременно обработаны на различных сущностях:
Длина очереди WQLEN по умолчанию ограничена значением 32, что не позволяет виртуальной машине выполнять более 32-х I/O одновременно.
Длина очереди AQLEN - ограничена значением 1024, чтобы собирать в себя I/O от всех виртуальных машин хоста.
Длина очереди DQLEN - ограничена значением 30 или 32, что не позволяет "выедать" одному хосту ESXi с одного хранилища (LUN) более 30-ти или 32-х операций ввода-вывода
Зачем вообще нужны очереди? Очень просто - очередь это естественный способ ограничить использование общего ресурса. То есть одна виртуальная машина не заполонит своими командами ввода-вывода весь HBA-адаптер, а один хост ESXi не съест всю производительность у одного Datastore (LUN), так как ограничен всего 32-мя I/O к нему.
Мы уже писали о функционале Storage I/O Control (SIOC), который позволяет регулировать последний тип очереди, а именно DQLEN, что позволяет корректно распределить нагрузку на СХД между сервисами в виртуальных машинах в соответствии с их параметрами shares (эта функциональность есть только в издании vSphere Enterprise Plus). Механизм Storage IO Control для хостов VMware ESX включается при превышении порога latency для тома VMFS, определяемого пользователем. Однако, стоит помнить, что механизм SIOC действует лишь в пределах максимально определенного значения очереди, то есть по умолчанию не может выйти за пределы 32 IO на LUN от одного хоста.
Для большинства случаев этого достаточно, однако иногда требуется изменить обозначенные выше длины очередей, чтобы удовлетворить требования задач в ВМ, которые генерируют большую нагрузку на подсистему ввода-вывода. Делается это следующими способами:
1. Настройка длины очереди WQLEN.
Значение по умолчанию - 32. Его задание описано в статье KB 1268. В Advanced Settings хоста ESXi нужно определить следующий параметр:
Disk.SchedNumReqOutstanding (DSNRO)
Он глобально определяет, сколько операций ввода-вывода (IOs) может максимально выдать одна виртуальная машина на LUN одновременно. В то же время, он задает это максимальное значение в IOs для всех виртуальных машин на этот LUN от хоста ESXi (это глобальная для него настройка). То есть, если задано значение 32, то все машины могут одновременно выжать 32 IOs, это подтверждается в случае, где 3 машины генерируют по 32 одновременных IO к одному LUN, а реально к LUN идут все те же 32, а не 3*32.
2. Настройка длины очереди AQLEN.
Как правило, этот параметр менять не требуется, потому что дефолтного значения 1024 хватает практически для всех ситуаций. Где его менять, я не знаю, поэтому если знаете вы - можете написать об этом в комментариях.
3. Настройка длины очереди DQLEN.
Настройка этого параметра описана в KB 1267 (мы тоже про это писали) - она зависит от модели и драйвера HBA-адаптера (в KB информация актуальна на июнь 2010 года). Она взаимосвязана с настройкой Disk.SchedNumReqOutstanding и, согласно рекомендациям VMware, должна быть эквивалентна ей. Если эти значения различаются, то когда несколько ВМ используют с хоста ESXi один LUN - актуальной длиной очереди считается минимальное из этих значений.
Для отслеживания текущих значений очередей можно использовать утилиту esxtop, как описано в KB 1027901.
В конце прошлой недели были выпущены патчи для ESXi (Patch Release ESXi500-201207001), решающие эту проблему. Скачать их можно с портала патчей VMware, выбрав продукт ESXi версии 5.0.0 и дату - 12 июля:
Эти патчи включают в себя обновления подсистемы безопасности, а также множественные исправления ошибок, в том числе, фикс проблем Auto Start и SvMotion / VDS / HA :
Для тех, кто активно использует инфраструктуру виртуальных ПК на базе решения VMware View, на сайте проекта VMware Labs появился интересный скрипт - View Controlled Recompose Script. Как знают пользователи VMware View, при необходимости обновления десктопов можно сделать операцию "Recompose", где, выбрав обновленный снапшот базовой ВМ или другую базовую ВМ, можно перестроить виртуальные машины пользователей пула ПК на работу с новым диском, не затрагивая диск с пользовательскими данными:
В отличие от стандартых средств по рекомпозиции в VMware View Manager, в скрипте View Controlled Recompose производится интеллектуальная процедура: через интерфейс WMI производится определение неиспользуемых виртуальных машин, после чего один из таких десктопов используется как реплика (Replica VM), а далее для неиспользуемых десктопов происходит рекомпозиция на базе этой реплики. Потом для активных десктопов можно сделать Force Logoff и перенаправить пользователей на уже рекомпозированные виртуальные ПК, а для этих активных десктопов, в свою очередь, доделать рекомпозицию.
По умолчанию скрипт работает в интерактивном режиме и принимает следующие входные параметры:
Pool - пул виртуальных ПК для рекомпозиции
ParentVM - полный путь к базовому образу
NewSnapshot - полный путь к снапшоту образа, из которого будет создаваться реплика и делаться рекомпозиция
Скрипт необходимо запускать на сервере VMware View Connection Server, сам же скрипт сделан на PowerCLI / PowerShell. Более подробные инструкции по его использованию приведены по этой ссылке.
Скачать скрипт VMware View Controlled Recompose Script можно по этой ссылке.
Некоторое время назад мы уже писали о возможности конвертации RDM-томов, работающих в режиме виртуальной и физической совместимости, в формат VMDK. Сегодня мы поговорим об обратном преобразовании: из формата VMDK в формат RDM (physical RDM или virtual RDM).
Для начала опробуйте все описанное ниже на тестовой виртуальной машине, а потом уже приступайте к продуктивной. Перед началом конвертации необходимо остановить ВМ, а также сделать remove виртуального диска из списка устройств виртуальной машины. Определите, какой режим совместимости диска RDM вам необходим (pRDM или vRDM), прочитав нашу статью "Типы виртуальных дисков vmdk виртуальных машин на VMware vSphere".
Создайте новый LUN на дисковом массиве, где будет размещаться RDM-том, и сделайте Rescan на хосте ESXi, чтобы увидеть добавленный девайс в vSphere Client:
Обратите внимание на Runtime Name (в данном случае vmhba37:C0:T1:L0) и на идентификатор в скобках (naa.6000eb....итакдалее) - этот идентификатор нам и нужен. Словить его можно, выполнив следующую команду (подробнее об идентификации дисков тут):
# esxcfg-mpath -L
В результатах вывода по Runtime Name можно узнать идентификатор. Вывод будет примерно таким:
vmhba33:C0:T0:L0 state:active naa.6090a038f0cd6e5165a344460000909b vmhba33 0 0 0 NMP active san iqn.1998-01.com.vmware:bs-tse-i137-35c1bf18 00023d000001,iqn.2001-05.com.equallogic:0-8a0906-516ecdf03-9b9000004644a365-bs-lab-vc40,t,1
Соответственно, второе выделенное жирным - идентификатор, его копируем.
Далее выполняем следующую команду для конвертации диска в Virtual RDM:
Далее выберите виртуальную машину в vSphere Client и сделайте Add Disk, где в мастере укажите тип диска RDM и следуйте по шагам мастера для добавления диска. После этого проверьте, что LUN больше не показывается при выборе Add Storage для ESXi в vSphere Client. Запустите виртуальную машину и, если необходимо, в гостевой ОС в оснастке Disk Management сделайте этот диск Online.
Иногда в целях безопасности необходимо настроить время, по прошествии которого если клиент vSphere Client не используется, требуется прервать сессию работы с VMware vCenter. Как подсказывает нам William Lam, сделать это можно двумя способами:
Заданием аргумента при запуске исполняемого файла VpxClient.exe (vSphere Client)
В конфигурационном файле VpxClient.exe.config на рабочей станции, где установлен vSphere Client
В первом случае мы задаем параметр inactivityTimeout в свойствах ярлыка vSphere Client, где устанавливаем время в минутах, после которого при неактивности клиента будет показан диалог о необходимости повторного логина:
Во втором случае нужно найти файл VpxClient.exe.config, который находится в следующих местах в зависимости от версии ОС:
Открываем этот XML-файл и прямо перед окончанием секции cmdlineFallback добавляем следующую секцию:
<inactivityTimeout>X</inactivityTimeout>
Если вы задали значение 1, то после неактивности в течение 1 минуты, будет показано следующее сообщение:
Также Вильям указывает на еще 2 интересных параметра, которые могут быть заданы как на уровне аргументов исполняемого файла клиента, так и в VpxClient.exe.config:
-expAll либо добавление секции <expAll /> - при открытии vSphere Client ваше Inventory хостов и виртуальных машин будет полностью раскрыто
-noPlugins либо добавление секции <noPlugins /> - при запуске клиента все плагины будут отключены
Виктор прислал мне презентацию от того самого Ивана, который на одной из юзер-групп VMware рассматривал особенности дизайна и проектирования виртуальной инфраструктуры VMware vSphere. Часть, касающаяся виртуализации различных типов нагрузок в гостевых ОС виртуальных машин показалась мне очень интересной, поэтому я решил перевести ее и дополнить своими комментариями и ссылками. Итак, что следует учитывать при переносе и развертывании различных приложений в виртуальных машинах на платформе vSphere.
Мы уже писали о новом механизме высокой доступности VMware High Availability (HA), который появился в VMware vSphere 5 и работает на базе агентов Fault Domain Manager (FDM). Как известно, вместо primary/secondary узлов в новом HA появились роли узлов - Master (один хост кластера, отслеживает сбои и управляет восстановлением) и Slave (все остальные узлы, подчиняющиеся мастеру и выполняющие его указания в случае сбоя, а также участвующие в выборе нового мастера в случае отказа основного).
В нашей статье об HA было описано основное поведение хостов VMware ESXi и кластера HA в случае различных видов сбоев, но Iwan Rahabok сделал для этих процессов прекрасные блок-схемы, по которым понятно, как все происходит.
Если хост ESXi (Slave) не получил хартбита от Master, которые он ожидает каджую секунду, то он может либо принять участие в выборах, либо сам себя назначить мастером в случае изоляции (кликабельно):
Если хост ESXi (Master) получает heartbeat хотя бы от одного из своих Slave'ов, то он не считает себя изолированным, ну а если не получает от всех, то он изолирован и выполняет Isolation Responce в случае, если нет пинга до шлюза. Работающим в разделенном сегменте сети он себя считает, когда он может пинговать шлюз. Проверка живости хостов (Slaves) производится не только по хартбитам, но и по datastore-хартбитам (кликабельно):
Если у вас в виртуальной инфраструктуре большой набор хранилищ, хостов VMware ESXi и виртуальных машин, то легко не заметить один интересный момент - бесполезные vswp-файлы для виртуальных машин, размещенные в папке с ВМ. Выглядят они как <что-то там>.vswp.<номер чего-то там>:
Как видно из картинки, файлы эти не маленькие - размер vswp равен объему памяти, сконфигурированной для виртуальной машины (vRAM) без Reservation для RAM (если есть reservation, то размер vswp = vRAM - Reservation). Так вот эти файлы с номерами - это ненужный мусор. Образуются они тогда, когда хост ESXi падает в PSOD с запущенными виртуальными машинами.
Эти файлы, понятно дело, надо удалить. Для этого удобнее всего использовать PowerCLI:
dir vmstores:\ -Recurse -Include *.vswp.* | Select Name,Folderpath
На сайте проекта VMware Labs появилась новая интересная утилита Guest Reclaim, позволяющая уменьшить размер "тонкого" (thin provisioned) диска виртуальной машины из гостевой ОС Windows, истребовав нулевые блоки. Напомним, что когда тонкий диск виртуальной машины растет по мере наполнения данными, а потом вы эти данные в самой гостевой системе удаляете, его размер не уменьшается.
Один из способов уменьшить диск машины в VMware vSphere - это использовать утилиту sdelete для очистки блоко и перемещение виртуальной машины на другое хранилище средствами Storage vMotion. Однако, если вы прочтете нашу статью про datamover'ы при Storage vMotion и вспомните, что VMware vSphere 5 использует унифицированные блоки размером 1 МБ для всех хранилищ, то поймете, что этот способ больше не работает, поскольку в датамувере fs3dm не реализована процедура вычищения блоков целевого виртуального диска.
Есть конечно способ отключить fs3dm и, все-таки, уменьшить виртуальный диск машины на ESXi, однако это не очень удобная процедура. Поэтому сотрудники VMware и сделали удобную консольную утилитку Guest Reclaim, которая позволяет уменьшить диск с файловой системой NTFS.
Поддерживаются следующие гостевые ОС:
Windows XP
Windows Vista
Windows 7
Windows Server 2003
Windows Server 2008
Запускать утилиту нужно из гостевой ОС, в которой есть диски, являющиеся тонкими. Чтобы просмотреть список тонких дисков используйте команду:
GuestReclaim.exe -list
Если ничего не найдено - значит первые 16 дисков не являются тонкими или у вас ESXi 5.0 и ниже (читайте дальше). VMware предлагает приступать к уменьшению диска, когда у вас разница между размером VMDK и файлами гостевой ОС хотя бы 1 ГБ, при этом для работы самой утилиты может потребоваться дополнительно 16-100 МБ свободного места. Также перед началом использования утилиты рекомендуется запустить дефрагментацию диска, на которую тоже может потребоваться свободное место (будет расти сам VMDK-файл).
Команда, чтобы уменьшить тонкий VMDK-диск за счет удаления нулевых блоков, выполняемая из гостевой ОС:
guestReclaim.exe --volumefreespace D:\
Еще одно дополнение - утилиту можно использовать и для RDM-дисков.
А теперь главное - утилита работает только в случае, если hypervisor emulation layer представляет гостевой ОС диски как тонкие. В VMware ESXi 5.0, где Virtual Hardware восьмой версии, такой возможности нет, а вот в ESXi 5.1, где уже девятая версия виртуального железа - такая возможность уже есть. Соответственно, использовать утилиту вы можете только, начиная с VMware vSphere 5.1 (бета сейчас уже у всех есть), а пока можно использовать ее только для RDM-дисков.
Из ограничений утилиты Guest Reclaim:
Не работает со связанными клонами (Linked Clones)
Не работает с дисками, имеющими снапшоты
Не работает под Linux
Из дополнительных возможностей:
Поддержка томов Simple FAT/NTFS
Поддержка flat partitions и flat disks для истребования пространства
Работа в виртуальных и физических машинах
FAQ по работе с утилитой доступен по этой ссылке. Скачать утилиту можно тут.
Как известно, виртуализация требует дополнительных ресурсов сверх тех, которые потребляет непосредственно виртуальная машина. Это называют накладными расходами на виртуализацию (так называемый virtualization overhead). Оверхэд есть как для процессора (примерно 3-5 процентов на хост-сервере), так и для оперативной памяти.
При этом для оперативной памяти накладные расходы гипервизора зависят от количества виртуальных процессоров (vCPU) и объема оперативной памяти, выделенных виртуальной машине. Мы уже писали о накладных расходах по RAM для виртуальных машин в VMware vSphere 4, где использовались следующие средние значения:
В VMware vSphere 5 есть новая возможность, которая называется VMX Swap. При включении виртуальной машины гипервизор ESXi создает для нее vmx-процесс, управляющий различными структурами данных, под которые требуется физическая оперативная память. Ее объем, как было сказано, зависит от конфигурации ВМ - количества vCPU и RAM. Для снижения потребления этой памяти в ESXi 5.0 механизм VMX Swap создает swap-файл для сегментов данных процесса vmx, куда сбрасываются страницы памяти, но только в случае нехватки физической оперативной памяти на хосте.
VMX Swap создает файлы подкачки в директории с виртуальной машиной, через который и происходит загрузка и выгрузка страниц процесса vmx. Размещение этих файлов можно переопределить, добавив следующий параметр в расширенные настройки виртуальной машины:
sched.swap.vmxSwapDir
По умолчанию механизм VMX Swap включен и в критических ситуациях позволяет уменьшить overhead типичной виртуальной машины с 50 МБ до 10 МБ. Для виртуализации серверов такие порядки цифр может и не очень важны, зато для виртуализации настольных ПК (например, VMware View), где на одном сервере могут находиться десятки и даже сотни виртуальных машин, эта возможность может оказаться весьма кстати в условиях нехватки вычислительных ресурсов.
Если вы считаете, что ресурсов у вас достаточно и VMX Swap вам не нужен, можно его отключить, добавив значение FALSE в следующу расширенную настройку виртуальной машины:
sched.swap.vmxSwapEnabled
Ну а теперь посмотрим сколько оверхэда по памяти потребляет виртуальная машина уже в VMware vSphere 5 с включенным по умолчанию VMX Swap:
Эта информация уже из vSphere 5 Documentation Center. Как мы видим из таблицы, накладные расходы по памяти с учетом VMX Swap уже значительно меньше (в некоторых случаях до 8-9 раз). Как уверяют коллеги из VMware, в условиях недостатка ресурсов VMX Swap почти не влияет на производительность хост-сервера ESXi, ну а в условиях достатка - не влияет совсем.
На сайте Фрэнка Деннемана появилась отличная статья про механизмы "горячей" миграции хранилищ (Storage vMotion) и "горячей" миграции виртуальных машин (vMotion) в контексте их использования для одного хранилища (Datastore) или хоста ESXi в VMware vSphere. Мы просто не можем не перевести ее, так как она представляет большой интерес для понимания работы этих механизмов.
Начнем со Storage vMotion. Данная операция, очевидно, требует большой нагрузки как на хранилище, откуда и куда, переносятся виртуальные машины, так и на сам хост-сервер VMware ESXi. Особенно актуально это, когда хост или хранилище переходят в Maintenance Mode, и виртуальные машины массово начинают миграцию. В случае со Storage vMotion это создает колоссальную нагрузку на хранилище по вводу-выводу.
Для понимания затрат ресурсов на эти процессы Фрэнк вводит понятие "цены" (cost) начинающейся операции, которая не может превосходить количество доступных слотов на хосте или хранилище, выделенных под них. Наглядно это можно представить так:
Resource Max Cost - это максимальный объем в неких единицах (назовем их слотами), который находится в рамках пула доступных ресурсов для операции Storage vMotion. Для хоста ESXi емкость такого пула составляет 8 слотов, а цена операции Storage vMotion - 4 слота. Таким образом, на одном хосте ESXi могут одновременно выполняться не более 2-х операций Storage vMotion. Если выполняется одна операция - то занято 4 слота и 4 слота свободно (как для исходного, так и для целевого хранилища).
С хранилищем точно такая же система - но у него 128 слотов. Одна операция Storage vMotion для Datastore потребляет 16 слотов. Таким образом, на одном хранилище может выполняться 8 (128 / 16) одновременных операций Storage vMotion. Их могут инициировать, например, 4 хоста (по 2 операции максимально каждый). То есть, мы получаем следующую схему:
Все просто и понятно. Отметим здесь, что операция vMotion тоже потребляет ресурсы с Datastore - но всего 1 слот. Таким образом, на одном Datastore могут, например, выполняться 7 одновременных миграций Storage vMotion (7 * 16 = 112 слотов) и еще 16 миграций vMotion (112+16 = 128), задействующих ВМ этого Datastore.
Если вы не хотите, чтобы при переводе Datastore в Maintenance Mode на нем возникало сразу 8 одновременных миграций Storage vMotion и, как следствие, большой нагрузки, вы можете уменьшить пул слотов для хранилищ (для всех, а не для какого-то конкретно). Для этого нужно отредактировать конфигурационный файл vpxd.cfg на сервере VMware vCenter, который находится в папке:
Вбив значение 112, вы уменьшите максимальное число одновременных миграций Storage vMotion на Datastore до 7. На хосте ESXi менять размер пула слотов для Storage vMotion не рекомендуется (хотя такие секции можно добавить - это пробовали энтузиасты).
Про стоимость миграций vMotion для хостов ESX / ESXi 4.1 мы уже писали вот тут. На эту тему есть также статья KB 2001417. С тех пор в vMotion много чего изменилось, поэтому подтвердить актуальность для vSphere 5 пока не могу. Буду признателен, если вы напишете об этом в комментариях.
Не так давно мы упоминали о результатах тестирования решения для виртуализации настольных ПК предприятия VMware View 5, проведенного компанией Principled Technologies по поручению компании VMware. Продукт VMware View 5 в нем сравнивался с конкурирующим решением Citrix XenDesktop 5.5, при этом ПО от VMware выигрывало в производительности аналогу от Citrix для типовой нагрузки во многих категориях тестов.
VMware View 5 Performed better than or equal to Citrix XenDesktop 5.5 with equivalent settings on Login VSI workloads simulating common office applications
Посыл данного заголовка понятен - VMware View производительнее и круче.
Титульная страница отчета выглядит следующим образом:
В компании Citrix возмутились таким положением дел: "Как так? Они тестируют XenDesktop для одного десктопа и рабочей нагрузки в сферической локальной сети и выставляют это за результат реального тестирования. Непорядок!". Тогда в Citrix решили обратиться к парням из Principled Technologies и спросили "Что за дела, пацаны? Наше решение круче себя ведет, когда на предприятии сотни виртуальных ПК, доступ ко многим из них происходит через WAN-сети, да и вообще мы давно делаем продукт и свой протокол ICA/HDX, поэтому так быть не должно!".
Сообразительные ребята из Principled Technologies почесали репу и говорят: "А давайте мы вам сделаем тоже отчет! Там как раз про все это будет: и про WAN, и про то, что у вас есть технологии всякие оптимизации канала, и про все остальные ваши навороты". Citrix сказал: "А давайте!". И получился еще один документ, уже от апреля 2012 года, являющийся также результатом тестирования продуктов, но уже по заказу Citrix, с красивым заголовком:
Citrix XenDektop Provided a better remote user experience via WAN vs. VMware View 5
Видимо за прошлое исследование парням из Principled Technologies было немного стыдно, поэтому "vs. VMware View 5" они написали мелким шрифтом:
Посыл этого документа тоже понятен - Citrix круче VMware (причем если почитать, то даже если настроить View по Optimization Guide). Поэтому пользователям предлагается поломать голову над текстом и картинками обох исследований, которые радуют глаз своими разными подходами к оценке продуктов.
Посмотрим на графики первого исследования (по заказу VMware - справедливости ради отметим, что с Flash Redirection показан лучше XenDesktop):
Взглянем на второй документ (по заказу Citrix):
В итоге, что мы имеем: одна контора подготовила для двух конкурирующих вендоров отчеты, которые по-разному формируют отношение к их продуктам. Надо полагать, за это были заплачены деньги, ведь делаются такие вещи небесплатно. Поэтому все это напоминает один старинный анекдот. Ну а чуваки из PT свое получили.
Теперь мы ждем очередного задания для Principled Technologies, уже от VMware, в котором мы узнаем, почему же все-таки нужно использовать VMware при доступе через WAN. Непорядок же...
Иногда интересно в целях аудита посмотреть, какие команды были выполнены на хосте VMware ESXi 5.0, а что интереснее - кто именно их выполнял. Для этого на хосте ESXi есть специальный лог-файл, хранящий введенные команды:
/var/log/shell.log
В этот лог на хосте можно также заглянуть и через веб-браузер по адресу: https://ESXiHostnameOrIP/host/shell.log
Посмотрим его содержимое:
Отлично - историю команд мы получили, но кто из пользователей их выполнял? Для этого нам понадобится запомнить число в квадратных скобках после слова "shell" - это так называемый World ID для сессии (например, 2938482). Обратите также внимание на присутствующий для каждой команды timestamp.
Далее нам понадобиться открыть следующий лог-файл, хранящий данные об аутентификации пользователей:
/var/log/auth.log
В этот лог на хосте можно также заглянуть и через веб-браузер по адресу: https://ESXiHostnameOrIP/host/auth.log
Там мы найдем такие строчки, если использовался прямой логин в ESXi Shell:
2011-08-29T18:01:00Z login[2938482]: root login on 'char/tty/1'
Если использовался логин по SSH в интерактивном режиме, мы увидим вот такое:
2011-08-29T18:01:00Z sshd[12345]: Connection from 10.11.12.13 port 2605
2011-08-29T18:01:00Z sshd[12345]: Accepted keyboard-interactive/pam for root from10.11.12.13 port 2605 ssh2
2011-08-29T18:01:00Z sshd[2938482]: Session opened for 'root' on /dev/char/pty/t0
2011-08-29T18:01:00Z sshd[12345]: Session closed for 'root' on /dev/char/pty/t0
...
2011-08-29T18:35:05Z sshd[12345]: Session closed for 'root' 2
Если использовался логин по SSH с использованием публичного ключа, то мы увидим следующее:
2011-08-29T18:01:00Z sshd[12345]: Connection from 10.11.12.13 port 2605
2011-08-29T18:01:00Z sshd[12345]: Accepted publickey for root from 10.11.12.13 port 2605ssh2
2011-08-29T18:01:00Z sshd[2938482]: Session opened for 'root' on /dev/char/pty/t0
2011-08-29T18:01:00Z sshd[12345]: Session closed for 'root' on /dev/char/pty/t0
...
2011-08-29T18:35:05Z sshd[12345]: Session closed for 'root' 2
Теперь, я думаю понятно, что World ID сессии, который мы нашли для пользователя открывшего сессию с ESXi Shell и который указан в квадратных скобках строчек лога auth.log - тот же самый, что и в логе shell.log. Таким образом, в логе shell можно всегда понимать, кто и когда выполнял данные команды, зная World ID сессии пользователя из auth.log и timestamp.
В середине марта этого года компания VMware выпустила технологическое превью продукта VMware Workstation 2012, в котором впервые была анонсирована возомжность WSX - доступ к консоли виртуальной машины через браузер, в том числе, и с мобильных устройств, таких как Apple iPad под управлением iOS 5 и выше. На днях обновился это технологический релиз (VMware Workstation 2012 TP June), в котором появилось несколько интересных возможностей.
Напомним, что WSX Server, который есть в Workstation 2012, работает на базе технологии HTML 5 (с поддержкой WebSockets), что подразумевает отсутствие необходимости иметь какие-либо дополнительные компоненты, кроме веб-браузера, чтобы получить доступ к консоли виртуальной машины и средствами управления ей. В качестве веб-браузеров, той или иной степени совместимых с HTML 5, можно использовать Chrome 17, Firefox 10, IE 10, Safari 5 на ПК с Mac OS и iOS 5 для iPad. Отметим также, что эта возможность на данном этапе является "очень экспериментальной" (например, известно, что картинка иногда "зависает" и нужно повторно переподключиться).
В частности, все неплохо работает на New iPad с экраном Retina:
Добавим также, что компонент WSX Server есть как под Windows, так и под Linux, и доступен для загрузки вместе с основным дистрибутивом продукта.
Среди новых возможностей VMware Workstation 2012 TP June:
Поддержка гостевых и хостовых ОС Windows 8 и Windows Server 2012
Поддержка Ubuntu 12.04
Улучшения движка графического рендеринга и общие улучшения производительности
Поддержка OpenGL для гостевых ОС Linux
Restricted Virtual Machines - возможность задать дополнительный пароль для зашифрованных ВМ, чтобы предотвратить изменение их конфигурации со стороны неавторизованных пользователей (например, ВМ для студентов)
Возможность загрузки виртуальных машин на хосты VMware vSphere и обратно с них на Workstation
Возможность запуска "вложенных" виртуальных машин с ESX/ESXi
Запуска сервера Hyper-V в качестве гостевой ОС (эта возможность официально не поддерживается и никогда не будет)
Счетчики производительности виртуальных машин для профилирования приложений из гостевой ОС
Remote connections - существенные улучшения производительности при соединении с консолью ВМ на VMware vSphere или к машинам Workstation с помощью VNC-клиента
Disk Cleanup - новая возможность почистить место в папке с файлами виртуальной машины
UI Changes - интерфейс стал более современным и удобным
Существенно доработан сервер WSX, о котором написано выше
Поддержка голосового движка через WSX на Mac OS и iOS при работе с консолью ВМ Windows
На блогах компании Gartner появился очередной "магический квандрант", описывающий состояние дел на рынке платформ виртуализации x86-архитектуры по состоянию на июнь 2012 года:
Напомним, что магический квадрант Gartner используется для оценки поставщиков какого-либо сегмента рынка информационных технологий, где Gartner использует две линейные прогрессивные экспертные шкалы:
полнота видения (completeness of vision)
способность реализации (ability to execute)
Каждый поставщик, попавший в рамки рассмотрения для исследуемого сегмента рынка, оценивается по этим двум критериям. При этом, полнота видения откладывается на оси абсцисс, способность реализации — на оси ординат. Каждый поставщик, таким образом, оказывается в одном из четырёх квадрантов плоскости, называемых:
Лидеры (leaders) — поставщики с положительными оценками как по полноте видения, так и по способности реализации.
Претенденты (сhallengers) — поставщики с положительными оценками только по способности реализации.
Провидцы (visionaries) — поставщики с положительными оценками только по полноте видения.
Нишевые игроки (niche players) — поставщики с отрицательными оценками по обоим критериям.
В этой же публикации рассматриваются сильные и слабые стороны вендоров рынка виртуализации, таких как VMware, Citrix, Microsoft, Oracle, Parallels и Red Hat. В исследовании анализировались аспекты платформ виртуализации (серверных, а также "контейнеров" - виртуализации уровня ОС от Parallels) в связке с простейшими функциями по администрированию виртуальной инфраструктуры (высокоуровневые задачи не рассматривались).
Для тех, кому интересно сравнение с прошлым годом, наши коллеги сделали хорошую гифку:
По этой гифке хорошо видно, что компания Citrix сдала позиции в плане законченности и ясности своей стратегии развития продуктов (в частности, XenServer), а Microsoft приблизилась к VMware в обоих аспектах: как в плане заявленной стратегии, так и в плане ее реализации. Очевидно, что произошло это благодаря существенной доработке серверной платформы Microsoft Windows Server 2012 и новому поколению гипервизора Hyper-V 3.0, который в некоторых вещах даже превосходит VMware vSphere.
К сильным сторонам VMware компания Gartner отнесла продуманную стратегию развития продуктов, технологическое лидерство и инновации, высокий уровень удовлетворенности пользователей продуктами, а также очень обширную базу инсталляций и увеличившееся число провайдеров облачных услуг (VSPP). Сильными сторонами Microsoft Gartner признает существующую экосистему Windows-инфраструктур, большое количество пользователей и администраторов Windows-based систем (особенно крупных компаний Windows-only), невысокие цены при неплохой функциональности для компаний среднего размера, а также финансовую состоятельность самой корпорации (а значит и хорошие маркетинговые ресурсы).
К слабым сторонам Oracle отнесена их сфокусированность на рынке своих же продуктов, Citrix не очень понятно разивает свое партнерство с Microsoft в сегменте серверной виртуализации, Parallels не очень хвалят за архитектуру решения, а Red Hat ругают за плохой маркетинг и небольшую экосистему.
Ну а про то, как обстояли дела в 2010 году, написано у нас тут.
Как мы уже писали в одной из статей, в VMware vSphere 5 при работе виртуальных машин с хранилищами могут возникать 2 похожих по признакам ситуации:
APD (All Paths Down) - когда хост-сервер ESXi не может получить доступа к устройству ни по одному из путей, а также устройство не дает кодов ответа на SCSI-команды. При этом хост не знает, в течение какого времени будет сохраняться такая ситуация. Типичный пример - отказ FC-коммутаторов в фабрике или выход из строя устройства хранения. В этом случае хост ESXi будет периодически пытаться обратиться к устройству (команды чтения параметров диска) через демон hostd и восстановить пути. В этом случае демон hostd будет постоянно блокироваться, что будет негативно влиять на производительность. Этот статус считается временным, так как устройство хранения или фабрика могут снова начать работать, и работа с устройством возобновится.
В логе /var/log/vmkernel.log ситуация APD выглядит подобным образом:
2011-07-30T14:47:41.187Z cpu1:2049)WARNING: NMP: nmp_IssueCommandToDevice:2954:I/O could not be issued to device "naa.60a98000572d54724a34642d71325763" due to Not found
2011-07-30T14:47:41.187Z cpu1:2049)WARNING: NMP: nmp_DeviceRetryCommand:133:Device "naa.60a98000572d54724a34642d71325763": awaiting fast path state update for failover with I/O blocked. No prior reservation exists on the device.
2011-07-30T14:47:41.187Z cpu1:2049)WARNING: NMP: nmp_DeviceStartLoop:721:NMP Device "naa.60a98000572d54724a34642d71325763" is blocked. Not starting I/O from device.
2011-07-30T14:47:41.361Z cpu1:2642)WARNING: NMP: nmpDeviceAttemptFailover:599:Retry world failover device "naa.60a98000572d54724a34642d71325763" - issuing command 0x4124007ba7c0
2011-07-30T14:47:41.361Z cpu1:2642)WARNING: NMP: nmpDeviceAttemptFailover:658:Retry world failover device "naa.60a98000572d54724a34642d71325763" - failed to issue command due to Not found (APD), try again...
2011-07-30T14:47:41.361Z cpu1:2642)WARNING: NMP: nmpDeviceAttemptFailover:708:Logical device "naa.60a98000572d54724a34642d71325763": awaiting fast path state update...
2011-07-30T14:47:42.361Z cpu0:2642)WARNING: NMP: nmpDeviceAttemptFailover:599:Retry world failover device "naa.60a98000572d54724a34642d71325763" - issuing command 0x4124007ba7c0
2011-07-30T14:47:42.361Z cpu0:2642)WARNING: NMP: nmpDeviceAttemptFailover:658:Retry world failover device "naa.60a98000572d54724a34642d71325763" - failed to issue command due to Not found (APD), try again...
2011-07-30T14:47:42.361Z cpu0:2642)WARNING: NMP: nmpDeviceAttemptFailover:708:Logical device "naa.60a98000572d54724a34642d71325763": awaiting fast path state update...
Ключевые слова здесь: retry, awaiting. Когда вы перезапустите management agents, то получите такую вот ошибку:
Not all VMFS volumes were updated; the error encountered was 'No connection'.
Errors:
Rescan complete, however some dead paths were not removed because they were in use by the system. Please use the 'storage core device world list' command to see the VMkernel worlds still using these paths.
Error while scanning interfaces, unable to continue. Error was Not all VMFS volumes were updated; the error encountered was 'No connection'.
В этом случае надо искать проблему в фабрике SAN или на массиве.
PDL (Permanent Device Loss) - когда хост-серверу ESXi удается понять, что устройство не только недоступно по всем имеющимся путям, но и удалено совсем, либо сломалось. Определяется это, в частности, по коду ответа для SCSI-команд, например, вот такому: 5h / ASC=25h / ASCQ=0 (ILLEGAL REQUEST / LOGICAL UNIT NOT SUPPORTED) - то есть такого устройства на массиве больше нет (понятно, что в случае APD по причине свича мы такого ответа не получим). Этот статус считается постоянным, так как массив ответил, что устройства больше нет.
А вообще есть вот такая табличка для SCSI sense codes, которые вызывают PDL:
В случае статуса PDL гипервизор в ответ на запрос I/O от виртуальной машины выдает ответ VMK_PERM_DEV_LOSS и не блокирует демон hostd, что, соответственно, не влияет на производительность. Отметим, что как в случае APD, так и в случае PDL, виртуальная машина не знает, что там произошло с хранилищем, и продолжает пытаться выполнять команды ввода-вывода.
Такое разделение статусов в vSphere 5 позволило решить множество проблем, например, в случае PDL хост-серверу больше не нужно постоянно пытаться восстановить пути, а пользователь может удалить сломавшееся устройство с помощью операций detach и unmount в интерфейсе vSphere Client (в случае так называемого "Unplanned PDL"):
В логе /var/log/vmkernel.log ситуация PDL (в случае Unplanned PDL) выглядит подобным образом:
2011-08-09T10:43:26.857Z cpu2:853571)VMW_SATP_ALUA: satp_alua_issueCommandOnPath:661: Path "vmhba3:C0:T0:L0" (PERM LOSS) command 0xa3 failed with status Device is permanently unavailable. H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x25 0x0.
2011-08-09T10:43:26.857Z cpu2:853571)VMW_SATP_ALUA: satp_alua_issueCommandOnPath:661: Path "vmhba4:C0:T0:L0" (PERM LOSS) command 0xa3 failed with status Device is permanently unavailable. H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x25 0x0.
2011-08-09T10:43:26.857Z cpu2:853571)WARNING: vmw_psp_rr: psp_rrSelectPathToActivate:972:Could not select path for device "naa.60a98000572d54724a34642d71325763".
2011-08-09T10:43:26.857Z cpu2:853571)WARNING: ScsiDevice: 1223: Device :naa.60a98000572d54724a34642d71325763 has been removed or is permanently inaccessible.
2011-08-09T10:43:26.857Z cpu3:2132)ScsiDeviceIO: 2288: Cmd(0x4124403c1fc0) 0x9e, CmdSN 0xec86 to dev "naa.60a98000572d54724a34642d71325763" failed H:0x8 D:0x0 P:0x0
2011-08-09T10:43:26.858Z cpu3:2132)WARNING: NMP: nmp_DeviceStartLoop:721:NMP Device "naa.60a98000572d54724a34642d71325763" is blocked. Not starting I/O from device.
2011-08-09T10:43:26.858Z cpu2:2127)ScsiDeviceIO: 2316: Cmd(0x4124403c1fc0) 0x25, CmdSN 0xecab to dev "naa.60a98000572d54724a34642d71325763" failed H:0x1 D:0x0 P:0x0 Possible sense data: 0x5 0x25 0x0.
2011-08-09T10:43:26.858Z cpu2:854568)WARNING: ScsiDeviceIO: 7330: READ CAPACITY on device "naa.60a98000572d54724a34642d71325763" from Plugin "NMP" failed. I/O error
2011-08-09T10:43:26.858Z cpu2:854568)ScsiDevice: 1238: Permanently inaccessible device :naa.60a98000572d54724a34642d71325763 has no more open connections. It is now safe to unmount datastores (if any) and delete the device.
2011-08-09T10:43:26.859Z cpu3:854577)WARNING: NMP: nmpDeviceAttemptFailover:562:Retry world restore device "naa.60a98000572d54724a34642d71325763" - no more commands to retry
Ключевое слово здесь - permanently.
Становится понятно, что в случае, когда устройство хранения (LUN) реально сломалось или удалено сознательно, лучше всего избежать ситуации APD и попасть в статус PDL. Сделать это удается хост-серверу ESXi не всегда - по прежнему в vSphere 5.0 Update 1 это обрабатывается в ограниченном количестве случаев, но в vSphere 5.1 обещают существенно доработать этот механизм.
Также есть Advanced Settings на хосте ESXi, которые позволяют управлять дальнейшей судьбой машины, которая оказалась жертвой ситуации PDL. В частности есть 2 следующие расширенные настройки (начиная с vSphere 5.0 Update 1) - первая в категории "Disk", а вторая в расширенных настройках кластера HA:
disk.terminateVMonPDLDefault - если эта настройка включена (True), то в ситуации PDL для устройства, где находится ВМ, эта машина будет выключена. Настройка задается на уровне хоста ESXi и требует его перезагрузки для ее применения.
das.maskCleanShutdownEnabled - это настройка, будучи включенной (True), позволяет механизму VMware HA приступить к восстановлению виртуальной машины. Соответственно, если она выключена, то HA проигнорирует выключение виртуальной машины в случае ее "убийства" при включенной первой настройке.
Рекомендуется, чтобы обе эти настройки были включены.
Все описанные выше механизмы могут очень пригодиться при построении и обработке сбоев в "растянутых кластерах" VMware HA, построенных между географически разнесенными датацентрами. Об этом всем детально написано в документе "VMware vSphere Metro Storage Cluster Case Study".
После недавнего выпуска обновленной версии своих рекомендаций по обеспечению информационной безопасности VMware vSphere 5 Security Hardening, компания VMware обновила и свою бесплатную утилиту для проверки на соответствие данным требованиям - vSphere 5.0 Compliance Checker.
Основные особенности нового релиза vSphere 5.0 Compliance Checker:
Сканирование конфигураций хост-серверов на безопасность идет для 5 хостов одновременно (на одном vCenter)
Обследование строится на базе практик Hardening Guidelines, которые являются частью контента vCenter Configuration Manager (vCM)
Результат представляет собой таблицу соответствия (или несоответствия) пунктам Security Hardening с детальным описанием каждого пункта
Пример вывода vSphere 5.0 Compliance Checker:
Следующим релизом компания VMware обещает выпустить сканер на соответствие требованиям HIPAA.
Напомним, что после того, как вы с помощью данного сканера поняли, что нужно настроить хост-серверы в соответствие с лучшими практиками ИБ в виртуальных средах, необходимо воспользоваться продуктом vGate R2, который делает это не только на базе зарубежных наборов политик, но и отраслевых российских стандартов, таких как, например, требования Банка России.
В конце прошлой недели компания VMware в рамках проекта Labs выпустила очень интересный продукт - VMware ThinApp Factory, который предоставляется бесплатно всем пользователям с действующей лицензией на VMware ThinApp (входит в издание VMware View Premier). ThinApp Factory позволяет производить масштабное создание виртуализованных приложений в контейнерах ThinApp в корпоративных окружениях, насчитывающих сотни приложений, из единой консоли. С помощью ThinApp Factory массовая упаковка приложений в контейнеры превращается в упорядоченный рабочий процесс, приводящий в итоге к публикации приложений в сервисе федерации VMware Horizon Application Manager (на картинке он еще называется ThinApp Store):
VMware ThinApp Factory поставляется в виде виртуального модуля (Virtual Appliance), построенного на базе ОС Debian Linux с веб-интерфейсом управления на базе сервера TomCat. В качестве источников для создания виртуализованных приложений могут быть использованы файловые хранилища с инсталляторами приложений, импортированные вручную дистрибутивы, а также источники "RSS-style app-installer feeds" в формате JSON (JavaScript Object Notation).
Упаковка приложений производится в потоковом режиме с одновременным исполнением нескольких задач:
Используя источники приложений в формате JSON, можно отслеживать появление новых версий приложения и тут же паковать их:
Приложения автоматически скачиваются из источников, указанных администратором, и складываются в репозиторий:
VMware ThinApp Factory имеет также возможность "рецептов" (Recipes) - наборов шагов настройки приложений (они берутся из уже установленных приложений или пакетов ThinApp), которые сохраняются в базе и могут быть применены к создаваемым пакетам виртуализованных приложений. Источником рецепта может быть пользователь или рекомендации VMware.
Само собой, поддерживается и импорт существующих проектов ThinApp:
В ThinApp Factory можно создать Virtual Machine Work Pool - пул виртуальных машин, в которых будет происходить создание виртуализованных приложений, в соответствии с их требованиями к версии операционной системы (напомним о необходимости наличий лицензий для них):
Наряду с функциями автоматического создания пакетов, в ThinApp Factiry администратор может самостоятельно "записывать" проект и создавать пакет:
Для работы виртуального модуля ThinApp Factory потребуется серверная платформа VMware vSphere 4.1 или более поздней версии, либо настольная платформа VMware Workstation 8.x или более поздняя. На тему функциональности и архитектуры ThinApp Factory есть также неплохая презентация.
Основная страница продукта VMware ThinApp Factory находится тут, документация доступна по этой ссылке.
Для тех, кому интересно сделать загрузочный ISO-образ с установленным в нем клиентом VMware View Client, появился сайт TinyCore Builder for VMware View, позволяющий сгенерировать ISO на базе минималистичного дистрибутива Tiny Core Linux, в котором можно настроить как параметры самой ОС, так и параметры клиента:
Дальше эту исошку можно подцепить к виртуальной машине и загрузиться с нее (чтобы не ставить, например, клиент в свою основную ОС), а можно пролить ее на флешку, чтобы загружать с нее рабочую станцию. Для этих целей можно использовать утилиту UNetbootin:
Такую флешку, например, может использовать администратор, чтобы всегда иметь возможность запустить клиента VMware View на любом компьютере.
Не все знают, что в качестве распределенного коммутатора с расширенной функциональностью для инфраструктуры VMware vSphere существует не только устройство Cisco Nexus 1000V. Есть также и виртуальное устройство от IBM, которое называется System Networking Distributed Switch 5000V (DVS 5000V).
Это тоже программный распределенный коммутатор, который поставляется в виде 2 компонентов:
Host Module (он же Data Path Module, DPM) - модуль, поставляемый в zip-формате (Offline Bundle) для хостов VMware ESXi 5.x, позволяющий контролировать состояние виртуальных коммутаторов в пределах хоста.
Controller - виртуальный модуль (Virtual Appliance) в формате OVA, позволяющий централизованно управлять сетевой инфраструктурой виртуализации через хостовые модули.
vDS от IBM так же, как и Nexus 1000V, интегрирован с VMware vCenter и отображается как обычный Distributed Virtual Switch в интерфейсе vSphere Client. При этом он обладает следующими расширенными возможностями:
Поддержка технологии Private VLAN для разделения трафика ВМ
Поддержка списков контроля доступа (ACL) для контроля трафика ВМ
Поддержка технологий зеркалирования портов (Port Mirroring): локально (SPAN) и удаленной (ERSPAN)
Поддержка техники мониторинга трафика sFlow (похожа на NetFlow)
Управление трафиком и статистика на базе стандарта IEEE 802.1Qbg (Edge Virtual Bridging, EVB)
Поддержка технологий Static Port Aggregation и
Dynamic Port Aggregation
Поддержка логирования Syslog и по SNMP
С точки зрения управления таким распределенным коммутатором DVS 5000V оно построено на базе операционной системы IBM NOS (Network Operating System) и предоставляет следующие интерфейсы:
Мы уже писали о новых возможностях VMware View 5.1 и, в частности, о технологии Storage Accelerator, которая использует кэш CBRC на чтение на стороне хоста VMware ESXi, чтобы быстрее отдавать блоки виртуальной машине напрямую из памяти, не обращаясь к хранилищу.
Как понятно из названия (Content Based Read Cache), технология Storage Accelerator позволяет оптимизировать ввод-вывод именно тогда, когда в среде виртуальных ПК у нас много операций чтения, которые происходят для множества связанных клонов, развертываемых из реплики View Compser. Таких показательных ситуаций две: Boot Storm (когда пользователи приходят на работу и одновременно включают свои ПК для доступа к своим виртуальным машинам) и Antivirus Storm (когда антивирус начинает шерстить файлы в гостевой ОС).
Интересные картинки по тестированию данной технологии обнаружились в одном из тестов Login VSI, которая проверила, как это работает на хосте со 143-мя связанными клонами виртуальных ПК для размера кэша CBRC размером в 2 ГБ. Работает это замечательно:
Как мы видим, к сотой минуте нагрузка улеглась и операции чтения стали уже не такими однородными. Для постоянных (persistent) дисков (т.е. тех, которые не развертываются из единого базового образа) технология CBRC тоже дает свои плоды:
Ну и здорово помогает нам View Storage Accelerator при антивирусном шторме, когда антивирусники большого количества виртуальных машин одновременно набрасываются на файлы гостевых ОС:
Ну и под конец напомним, что в качестве антивирусных решений в VDI-средах для оптимизации нагрузки нужно использовать решения с поддержкой VMsafe.
Для обладателей устройств iPad или iPhone и, по совместительству, разработчиков сценариев для автоматизации операций в виртуальной инфраструктуре VMware vSphere на App Store есть замечательное справочное руководство по скриптам PowerCLI - vPowerCLI5 Reference.
Справочник включает в себя более 200 командлетов PowerCLI, которые упорядочены в алфавитном порядке, также есть поиск. Для каждого командлета предоставляется описание, взятое из vSphere PowerCLI Reference от VMware.
Мы уже писали об облачной платформе Amazon Web Services (AWS), куда включен продукт Amazon Elastic Compute Cloud (EC2) - один из самых известных сервисов IaaS по аренде ресурсов для виртуальных машин. Недавно компания Amazon объявила, что теперь есть не только возможность импорта виртуальных машин на платформах вендоров VMware, Citrix и Microsoft, но и обратный их экспорт в частное облако клиента в соответствующих форматах. Несмотря на то, что технически сделать это весьма просто, компания затягивала с этой возможностью.
Экспорт инстанса делается средствами командной строки с помощью задачи ec2-create-instance-export-task. Например, в формат VMware можно экспортировать следующим образом:
Для экспорта потребуется ID инстанса, имя хранилища (S3 Bucket) и тип выходного образа (vmware, citrix или microsoft).
Мониторинг процесса экспорта выполняется командой ec2-describe-export-tasks, а отмена экспорта - ec2-cancel-export-task. Полный синтаксис операций экспорта экземпляров EC2 в виртуальные машины частного облака можно изучить по этой ссылке.